package com.cc.model;

import java.util.Date;

public class Plan implements Cloneable {
	private Integer id;

	private Integer projectId;

	private String projectCode;

	private String projectName;

	private String stageCode;

	private String stageName;

	private String groupCode;

	private String groupName;

	private Integer planTemplateId;

	private String planTemplateName;

	private String planName;

	private Integer status;

	private Integer initialId;

	private Integer versionStatus;

	private String versionCode;

	private String flowId;

	private String flowModelId;

	private String remark;

	private Date endDate;

	private Date startDate;

	private Date payDate;

	private Integer deleteStatus;

	private Date createTime;

	private String createUser;

	private Date updateTime;

	private String updateUser;

	private Integer isaddTask;

	private Integer savePosition;

	private Integer amount;

	private String dateStr;

	private float score;
	
	public float getScores() {
		if(score == 0) {
			return 0.0f;
		}
		float f1 = score/(getFinishCount()+getNoFinishCount());
		f1 = (float)(Math.round(f1*10))/10;
		return f1;
	}

	private Integer amountNow;

	private Integer finishCount;

	private Integer noFinishCount;

	public Integer getId() {
		return id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	public Integer getProjectId() {
		return projectId;
	}

	public void setProjectId(Integer projectId) {
		this.projectId = projectId;
	}

	public String getProjectCode() {
		return projectCode;
	}

	public void setProjectCode(String projectCode) {
		this.projectCode = projectCode == null ? null : projectCode.trim();
	}

	public String getProjectName() {
		return projectName;
	}

	public void setProjectName(String projectName) {
		this.projectName = projectName == null ? null : projectName.trim();
	}

	public String getStageCode() {
		return stageCode;
	}

	public void setStageCode(String stageCode) {
		this.stageCode = stageCode == null ? null : stageCode.trim();
	}

	public String getStageName() {
		return stageName;
	}

	public void setStageName(String stageName) {
		this.stageName = stageName == null ? null : stageName.trim();
	}

	public String getGroupCode() {
		return groupCode;
	}

	public void setGroupCode(String groupCode) {
		this.groupCode = groupCode == null ? null : groupCode.trim();
	}

	public String getGroupName() {
		return groupName;
	}

	public void setGroupName(String groupName) {
		this.groupName = groupName == null ? null : groupName.trim();
	}

	public Integer getPlanTemplateId() {
		return planTemplateId;
	}

	public void setPlanTemplateId(Integer planTemplateId) {
		this.planTemplateId = planTemplateId;
	}

	public String getPlanTemplateName() {
		return planTemplateName;
	}

	public void setPlanTemplateName(String planTemplateName) {
		this.planTemplateName = planTemplateName == null ? null : planTemplateName.trim();
	}

	public String getPlanName() {
		return planName;
	}

	public void setPlanName(String planName) {
		this.planName = planName == null ? null : planName.trim();
	}

	public Integer getStatus() {
		return status;
	}

	public void setStatus(Integer status) {
		this.status = status;
	}

	public Integer getInitialId() {
		return initialId;
	}

	public void setInitialId(Integer initialId) {
		this.initialId = initialId;
	}

	public Integer getVersionStatus() {
		return versionStatus;
	}

	public void setVersionStatus(Integer versionStatus) {
		this.versionStatus = versionStatus;
	}

	public String getVersionCode() {
		return versionCode;
	}

	public void setVersionCode(String versionCode) {
		this.versionCode = versionCode == null ? null : versionCode.trim();
	}

	public String getFlowId() {
		return flowId;
	}

	public void setFlowId(String flowId) {
		this.flowId = flowId;
	}

	public String getFlowModelId() {
		return flowModelId;
	}

	public void setFlowModelId(String flowModelId) {
		this.flowModelId = flowModelId;
	}

	public String getRemark() {
		return remark;
	}

	public void setRemark(String remark) {
		this.remark = remark == null ? null : remark.trim();
	}

	public Date getEndDate() {
		return endDate;
	}

	public void setEndDate(Date endDate) {
		this.endDate = endDate;
	}

	public Date getStartDate() {
		return startDate;
	}

	public void setStartDate(Date startDate) {
		this.startDate = startDate;
	}

	public Date getPayDate() {
		return payDate;
	}

	public void setPayDate(Date payDate) {
		this.payDate = payDate;
	}

	public Integer getDeleteStatus() {
		return deleteStatus;
	}

	public void setDeleteStatus(Integer deleteStatus) {
		this.deleteStatus = deleteStatus;
	}

	public Date getCreateTime() {
		return createTime;
	}

	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}

	public String getCreateUser() {
		return createUser;
	}

	public void setCreateUser(String createUser) {
		this.createUser = createUser == null ? null : createUser.trim();
	}

	public Date getUpdateTime() {
		return updateTime;
	}

	public void setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
	}

	public String getUpdateUser() {
		return updateUser;
	}

	public void setUpdateUser(String updateUser) {
		this.updateUser = updateUser == null ? null : updateUser.trim();
	}

	public Integer getIsaddTask() {
		return isaddTask;
	}

	public void setIsaddTask(Integer isaddTask) {
		this.isaddTask = isaddTask;
	}

	public Integer getSavePosition() {
		return savePosition;
	}

	public void setSavePosition(Integer savePosition) {
		this.savePosition = savePosition;
	}

	public Integer getAmount() {
		return amount;
	}

	public void setAmount(Integer amount) {
		this.amount = amount;
	}

	public String getDateStr() {
		return dateStr;
	}

	public void setDateStr(String dateStr) {
		this.dateStr = dateStr;
	}

	public float getScore() {
		return score;
	}

	public void setScore(float score) {
		this.score = score;
	}

	public Integer getAmountNow() {
		return amountNow;
	}

	public void setAmountNow(Integer amountNow) {
		this.amountNow = amountNow;
	}

	public Integer getFinishCount() {
		return finishCount;
	}

	public void setFinishCount(Integer finishCount) {
		this.finishCount = finishCount;
	}

	public Integer getNoFinishCount() {
		return noFinishCount;
	}

	public void setNoFinishCount(Integer noFinishCount) {
		this.noFinishCount = noFinishCount;
	}

	public Plan clone() {
		Plan plan = null;
		try {
			plan = (Plan) super.clone();
		} catch (CloneNotSupportedException e) {
			e.printStackTrace();
		}
		return plan;
	}

}